import {
    useDict
} from '@/utils/dict'
Component({
    externalClasses: ['wr-class'],
    properties: {
        goodsList: {
            type: Array,
            value: [],
        },
        id: {
            type: String,
            value: '',
            observer: (id) => {
                this.genIndependentID(id);
            },
        },
        thresholds: {
            type: Array,
            value: [],
        },
    },
    data: {
        independentID: '',
        courseList: []
    },
    lifetimes: {
        ready() {
            this.init();
        },
    },
    methods: {
        onClickGoods(e) {
            const {
                index
            } = e.currentTarget.dataset;
            this.triggerEvent('click', {
                ...e.detail,
                index
            });
        },

        onClickGoodsThumb(e) {
            const {
                index
            } = e.currentTarget.dataset;
            this.triggerEvent('thumb', {
                ...e.detail,
                index
            });
        },

        init() {
            this.genIndependentID(this.id || '');
            useDict('course_type').then((res) => {
                this.setData({
                    courseList: res['course_type']
                })
            })
        },

        genIndependentID(id) {
            if (id) {
                this.setData({
                    independentID: id
                });
            } else {
                this.setData({
                    independentID: `goods-list-${~~(Math.random() * 10 ** 8)}`,
                });
            }
        },
        getCourseTypeObj(value) {
            return this.data.courseList.find((v) => v.value === value)
        }
    },
});